/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/itframe">itframe</a> All rights reserved.
 */
package com.rise.itframe.modules.inv.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.rise.itframe.common.persistence.CrudDao;
import com.rise.itframe.common.persistence.annotation.MyBatisDao;
import com.rise.itframe.modules.inv.entity.InvInfo;

/**
 * 发票登记信息DAO接口
 * @author ming
 * @version 2017-12-31
 */
@MyBatisDao
public interface InvInfoDao extends CrudDao<InvInfo> {

    List<String> getAllInvDeptNames(InvInfo invInfo);

    /**
     * 查询当天开票单位开票次数
     * @param invInfo
     * @return
     */
    Integer getInvNums(InvInfo invInfo);

    /**
     * 查询汇总
     * @param invInfo
     * @return
     */
    Map<String, String> findListSum(InvInfo invInfo);

    /**
     * 查询相似开票列表
     * @param invInfo
     * @return
     */
    List<InvInfo> findSimilarList(InvInfo invInfo);

    List<InvInfo> findListByDept(InvInfo invInfo);

    List<InvInfo> findListByTransact(InvInfo invInfo);

    /**
     * 打车票日期相近
     * @param invInfo
     * @return
     */
    List<InvInfo> findListByPlateNo(@Param("invInfo") InvInfo invInfo,@Param("plateNoInterval")Integer plateNoInterval);

}